﻿using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using Dominio;
using Servicios;

namespace EstadisticaProduce.Acuicultura
{
    public partial class frmDatosEstablecimientoCultivo : System.Web.UI.Page
    {
        clsAcuicultura _consultas = new clsAcuicultura();
        string err_mens = string.Empty;
        Int32 iresultado = 0;

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
               hdnCodEstablecimiento.Value = "1";
                hdnCodEmpresa.Value = "00001";
                
                //cargaRegion();
                //cargaProvincia(string.Empty);
                //cargaDistrito(string.Empty, string.Empty);
                //cargaAmbito();
                //cargaTipoDerecho();
                //cargaSistemaCultivo();
                //cargaNivelProduccion();
                //cargaCargos();
                //cargaDatos();
            }
        }

        protected void ddlRegion_SelectedIndexChanged(object sender, EventArgs e)
        {
            //cargaProvincia(ddlRegion.SelectedItem.Value);
        }

        protected void ddlProvincia_SelectedIndexChanged(object sender, EventArgs e)
        {
            //cargaDistrito(ddlRegion.SelectedItem.Value, ddlProvincia.SelectedItem.Value);
        }

        protected void btnLimpia_Click(object sender, EventArgs e)
        {

        }

        private void cargaDatos() {
            decimal COD_ESTABLECIMIENTO = Convert.ToDecimal(hdnCodEstablecimiento.Value);
            string COD_EMPRESA = hdnCodEmpresa.Value;

            Hashtable ht = new Hashtable();
            ht.Add("COD_ESTABLECIMIENTO", COD_ESTABLECIMIENTO);
            ht.Add("COD_EMPRESA", COD_EMPRESA);

            List<domConsultasGenerales> lst = new List<domConsultasGenerales>();
            lst = _consultas.ListaCentroCultivo(ht);
            txtDireccion.Text = lst[0].domiciliofiscal;
            Utilidades.DropDownListSelectValue(ref ddlRegion, lst[0].coddepartamento);

            cargaProvincia(ddlRegion.SelectedItem.Value);

            Utilidades.DropDownListSelectValue(ref ddlProvincia, lst[0].codprovincia);
            cargaDistrito(ddlRegion.SelectedItem.Value, ddlProvincia.SelectedItem.Value);

            Utilidades.DropDownListSelectValue(ref ddlDistrito, lst[0].coddistrito);

            txtEspejo.Text = lst[0].canespejoagua.ToString();
            txtResolucion.Text = lst[0].desresolucion.ToString();

            Utilidades.DropDownListSelectValue(ref ddlAmbito, lst[0].codambitocultivo.ToString());

            Utilidades.DropDownListSelectValue(ref ddlTipoDerecho, lst[0].codtipoderecho.ToString());

            Utilidades.DropDownListSelectValue(ref ddlNivelProduccion, lst[0].codnivelproduccion.ToString());

            txtTelefono.Text = lst[0].numtelefono.ToString();
            txtFax.Text = lst[0].numfax.ToString();
            txtResponsable.Text = lst[0].desresponsable.ToString();

            Utilidades.DropDownListSelectValue(ref ddlCargo, lst[0].codcargo.ToString());
            txtMail.Text = lst[0].desmailresponsable.ToString();

        }

        protected void btnGraba_Click(object sender, EventArgs e)
        {
            
            decimal COD_ESTABLECMIENTO = Convert.ToDecimal(hdnCodEstablecimiento.Value);
            string COD_REGION = ddlRegion.SelectedItem.Value;
            string COD_PROVINCIA = ddlProvincia.SelectedItem.Value;
            string COD_DISTRITO = ddlDistrito.SelectedItem.Value;
            string DES_DIRECCION = txtDireccion.Text;
            decimal CAN_ESPEJOAGUA = 0;
            if(txtEspejo.Text != string.Empty){
                CAN_ESPEJOAGUA = Convert.ToDecimal( txtEspejo.Text);
            }
            string DES_RESOLUCION = txtResolucion.Text;
            string _txtDerecho = txtDerecho.Text; //-- y este senor donde michi vaaaaaaa
            decimal COD_AMBITO = Convert.ToDecimal( ddlAmbito.SelectedItem.Value);
            string COD_TIPODERECHO = ddlTipoDerecho.SelectedItem.Value;
            string _ddlSistemaCultivo = ddlSistemaCultivo.SelectedItem.Value; //???????????????????
            decimal COD_NIVELPRODUCCION = Convert.ToDecimal(ddlNivelProduccion.SelectedItem.Value);
            string NUM_TELEFONO = txtTelefono.Text;
            string NUM_FAX = txtFax.Text;
            string DES_RESPONSABLE = txtResponsable.Text;
            decimal COD_CARGORESPONSABLE = Convert.ToDecimal(ddlCargo.SelectedItem.Value);
            string DES_EMAILRESPONSABLE = txtMail.Text;
            string EST_PROPIEDAD = "EST_PROPIEDAD";
            decimal COD_ZONA = 1;
            Hashtable ht = new Hashtable();
            ht.Add("COD_ESTABLECMIENTO", COD_ESTABLECMIENTO);
            ht.Add("COD_REGION",COD_REGION);
            ht.Add("COD_PROVINCIA", COD_PROVINCIA);
            ht.Add("COD_DISTRITO", COD_DISTRITO);
            ht.Add("DES_DIRECCION", DES_DIRECCION);
            ht.Add("CAN_ESPEJOAGUA", CAN_ESPEJOAGUA);
            ht.Add("DES_RESOLUCION", DES_RESOLUCION);
            ht.Add("COD_TIPODERECHO", COD_TIPODERECHO);
            ht.Add("COD_AMBITO", COD_AMBITO);
            ht.Add("COD_NIVELPRODUCCION", COD_NIVELPRODUCCION);
            ht.Add("NUM_TELEFONO", NUM_TELEFONO);
            ht.Add("NUM_FAX", NUM_FAX);
            ht.Add("DES_RESPONSABLE", DES_RESPONSABLE);
            ht.Add("COD_CARGORESPONSABLE", COD_CARGORESPONSABLE);
            ht.Add("DES_EMAILRESPONSABLE", DES_EMAILRESPONSABLE);
            ht.Add("EST_PROPIEDAD", EST_PROPIEDAD);
            ht.Add("COD_ZONA", COD_ZONA);

            iresultado=_consultas.ActualizaCentroCultivo(ht);
            Response.Redirect("frmDatosEstablecimientoCultivo.aspx");
        }


        #region Carga: Drop Ubigeo

        private void cargaRegion()
        {
            string COD_REGION = "%";
            string COD_PROVINCIA = "00";
            string COD_DISTRITO = "00";

            try
            {
                Hashtable ht = new Hashtable();
                ht.Add("COD_REGION", COD_REGION);
                ht.Add("COD_PROVINCIA", COD_PROVINCIA);
                ht.Add("COD_DISTRITO", COD_DISTRITO);
                List<domConsultasGenerales> lst = new List<domConsultasGenerales>();
                lst = _consultas.ListaUbigeo(ht);

                ddlRegion.DataSource = lst;
                ddlRegion.DataTextField = "desubicacion";
                ddlRegion.DataValueField = "coddepartamento";
                ddlRegion.DataBind();

                Utilidades.DropDownListAnnadir(ref ddlRegion, "", "- Seleccione -", 0);

                iresultado = 1;
            }
            catch (Exception ex)
            {
                err_mens = ex.Message;
                iresultado = 99;
            }
            finally
            {
                if (iresultado == 99)
                {

                }
                else
                {

                }
            }
        }

        private void cargaCargos()
        {
            decimal COD_CARGO = -1;
            string DES_CARGO =  "%";
 
            try
            {
                Hashtable ht = new Hashtable();
                ht.Add("COD_CARGO", COD_CARGO);
                ht.Add("DES_CARGO", DES_CARGO);
 
                List<domConsultasGenerales> lst = new List<domConsultasGenerales>();
                lst = _consultas.ListaCargos(ht);

                ddlCargo.DataSource = lst;
                ddlCargo.DataTextField = "descargo";
                ddlCargo.DataValueField = "codcargo"; 
                ddlCargo.DataBind();

                Utilidades.DropDownListAnnadir(ref ddlRegion, "", "- Seleccione -", 0);

                iresultado = 1;
            }
            catch (Exception ex)
            {
                err_mens = ex.Message;
                iresultado = 99;
            }
            finally
            {
                if (iresultado == 99)
                {
                    Response.Write(err_mens);
                }
                else
                {

                }
            }
        }

        private void cargaProvincia(string _codRegion)
        {
            string COD_REGION = _codRegion;
            string COD_PROVINCIA = "%";
            string COD_DISTRITO = "00";
            try
            {
                Hashtable ht = new Hashtable();
                ht.Add("COD_REGION", COD_REGION);
                ht.Add("COD_PROVINCIA", COD_PROVINCIA);
                ht.Add("COD_DISTRITO", COD_DISTRITO);
                List<domConsultasGenerales> lst = new List<domConsultasGenerales>();
                lst = _consultas.ListaUbigeo(ht);

                ddlProvincia.DataSource = lst;
                ddlProvincia.DataTextField = "desubicacion";
                ddlProvincia.DataValueField = "codprovincia";
                ddlProvincia.DataBind();

                Utilidades.DropDownListAnnadir(ref ddlProvincia, "", "- Seleccione -", 0);

                iresultado = 1;
            }
            catch (Exception ex)
            {
                err_mens = ex.Message;
                iresultado = 99;
            }
            finally
            {
                if (iresultado == 99)
                {

                }
                else
                {

                }
            }
        }

        private void cargaDistrito(string _codRegion, string _codProvincia)
        {
            string COD_REGION = _codRegion;
            string COD_PROVINCIA = _codProvincia;
            string COD_DISTRITO = "%";
            try
            {
                Hashtable ht = new Hashtable();
                ht.Add("COD_REGION", COD_REGION);
                ht.Add("COD_PROVINCIA", COD_PROVINCIA);
                ht.Add("COD_DISTRITO", COD_DISTRITO);
                List<domConsultasGenerales> lst = new List<domConsultasGenerales>();
                lst = _consultas.ListaUbigeo(ht);

                ddlDistrito.DataSource = lst;
                ddlDistrito.DataTextField = "desubicacion";
                ddlDistrito.DataValueField = "coddistrito";
                ddlDistrito.DataBind();

                Utilidades.DropDownListAnnadir(ref ddlDistrito, "", "- Seleccione -", 0);

                iresultado = 1;
            }
            catch (Exception ex)
            {
                err_mens = ex.Message;
                iresultado = 99;
            }
            finally
            {
                if (iresultado == 99)
                {

                }
                else
                {

                }
            }

        }
        #endregion

        private void cargaAmbito()
        {
            decimal COD_AMBITOCULTIVO = -1;
            string DES_AMBITOCULTIVO = string.Empty;

            try
            {
                Hashtable ht = new Hashtable();
                ht.Add("COD_AMBITOCULTIVO", COD_AMBITOCULTIVO);
                ht.Add("DES_AMBITOCULTIVO", DES_AMBITOCULTIVO);
                List<domConsultasGenerales> lst = new List<domConsultasGenerales>();
                lst = _consultas.ListaAmbitoCultivo(ht);

                ddlAmbito.DataSource = lst;
                ddlAmbito.DataTextField = "desambitocultivo";
                ddlAmbito.DataValueField = "codambitocultivo";
                ddlAmbito.DataBind();

                Utilidades.DropDownListAnnadir(ref ddlAmbito, "", "- Seleccione -", 0);

                iresultado = 1;
            }
            catch (Exception ex)
            {
                err_mens = ex.Message;
                iresultado = 99;
            }
            finally
            {
                if (iresultado == 99)
                {

                }
                else
                {

                }
            }
        }

        private void cargaTipoDerecho()
        {
            decimal COD_TIPODERECHO = -1;
            string DES_TIPODERECHO = string.Empty;

            try
            {
                Hashtable ht = new Hashtable();
                ht.Add("COD_TIPODERECHO", COD_TIPODERECHO);
                ht.Add("DES_TIPODERECHO", DES_TIPODERECHO);
                List<domConsultasGenerales> lst = new List<domConsultasGenerales>();
                lst = _consultas.ListaTipoDerecho(ht);

                ddlTipoDerecho.DataSource = lst;
                ddlTipoDerecho.DataTextField = "destipoderecho";
                ddlTipoDerecho.DataValueField = "codtipoderecho";
                ddlTipoDerecho.DataBind();

                Utilidades.DropDownListAnnadir(ref ddlTipoDerecho, "", "- Seleccione -", 0);

                iresultado = 1;
            }
            catch (Exception ex)
            {
                err_mens = ex.Message;
                iresultado = 99;
            }
            finally
            {
                if (iresultado == 99)
                {

                }
                else
                {

                }
            }
        }

        private void cargaSistemaCultivo()
        {
            decimal COD_SISTEMACULTIVO = -1;
            string DES_SISTEMACULTIVO = string.Empty;

            try
            {
                Hashtable ht = new Hashtable();
                ht.Add("COD_SISTEMACULTIVO", COD_SISTEMACULTIVO);
                ht.Add("DES_SISTEMACULTIVO", DES_SISTEMACULTIVO);
                List<domConsultasGenerales> lst = new List<domConsultasGenerales>();
                lst = _consultas.ListaSistemaCultivo(ht);

                ddlSistemaCultivo.DataSource = lst;
                ddlSistemaCultivo.DataTextField = "dessistemacultivo";
                ddlSistemaCultivo.DataValueField = "codsistemacultivo";
                ddlSistemaCultivo.DataBind();

                Utilidades.DropDownListAnnadir(ref ddlSistemaCultivo, "", "- Seleccione -", 0);

                iresultado = 1;
            }
            catch (Exception ex)
            {
                err_mens = ex.Message;
                iresultado = 99;
            }
            finally
            {
                if (iresultado == 99)
                {

                }
                else
                {

                }
            }
        }

        private void cargaNivelProduccion()
        {
            decimal COD_NIVELPRODUCCION = -1;
            string DES_NIVELPRODUCCION = string.Empty;

            try
            {
                Hashtable ht = new Hashtable();
                ht.Add("COD_NIVELPRODUCCION", COD_NIVELPRODUCCION);
                ht.Add("DES_NIVELPRODUCCION", DES_NIVELPRODUCCION);
                List<domConsultasGenerales> lst = new List<domConsultasGenerales>();
                lst = _consultas.ListaNivelProduccion(ht);

                ddlNivelProduccion.DataSource = lst;
                ddlNivelProduccion.DataTextField = "desnivelproduccion";
                ddlNivelProduccion.DataValueField = "codnivelproduccion";
                ddlNivelProduccion.DataBind();

                Utilidades.DropDownListAnnadir(ref ddlNivelProduccion, "", "- Seleccione -", 0);

                iresultado = 1;
            }
            catch (Exception ex)
            {
                err_mens = ex.Message;
                iresultado = 99;
            }
            finally
            {
                if (iresultado == 99)
                {

                }
                else
                {

                }
            }
        }
    }
}